In the Search of Optimal Concurrency

نویسندگان

  • Vincent Gramoli
  • Petr Kuznetsov
  • Srivatsan Ravi
چکیده

Implementing a concurrent data structure typically begins with defining its sequential specification. However, when used as is, a nontrivial sequential data structure, such as a linked list, a search tree, or a hash table, may expose incorrect behavior: lost updates, inconsistent responses, etc. To ensure correctness, portions of the sequential code operating on the shared data must be “protected” from data races using synchronization primitives and, thus, certain schedules of the steps of concurrent operations must be rejected. But can we ensure that we do not “overuse” synchronization, i.e., that we reject a concurrent schedule only if it violates correctness? In this paper, we treat this question formally by introducing the notion of a concurrency-optimal implementation. A program’s concurrency is defined here as its ability to accept concurrent schedules, i.e., interleavings of steps of its sequential implementation. An implementation is concurrency-optimal if it accepts all interleavings that do not violate the program’s correctness. We explore the concurrency properties of search data structures which can be represented in the form of directed acyclic graphs exporting insert, delete and search operations. We prove, for the first time, that pessimistic (e.g., based on conservative locking) and optimistic serializable (e.g., based on serializable transactional memory) implementations of search data-structures are incomparable in terms of concurrency. Specifically, there exist simple interleavings of sequential code that cannot be accepted by any pessimistic (and resp., serializable optimistic) implementation, but accepted by a serializable optimistic one (and resp., pessimistic). Thus, neither of these two implementation classes is concurrency-optimal.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

ارائه الگوریتم پویا برای تنظیم هم‌روندی فرایندهای کسب‌وکار

Business process management systems (BPMS) are vital complex information systems to compete in the global market and to increase economic productivity. Workload balancing of resources in BPMS is one of the challenges have been long studied by researchers. Workload balancing of resources increases the system stability, improves the efficiency of the resources and enhances the quality of their pr...

متن کامل

A Survey of Concurrency Control Algorithms in the Operating Systems

Concurrency control is one of the important problems in operation systems. Various studies have been reported to present different algorithms to address this problem, although a few attempts have been made to represent an overall view of the characteristics of these algorithms and comparison of their capabilities to each other. This paper presents a survey of the current methods for controlling...

متن کامل

In the Search for Optimal Concurrency

It is common practice to use the epithet “highly concurrent” referring to data structures that are supposed to perform well in concurrent environments. But how do we measure the concurrency of a data structure in the first place? In this paper, we propose a way to do this, which allowed us to formalize the notion of a concurrency-optimal implementation. The concurrency of a program is defined h...

متن کامل

A Survey of Concurrency Control Algorithms in the Operating Systems

Concurrency control is one of the important problems in operation systems. Various studies have been reported to present different algorithms to address this problem, although a few attempts have been made to represent an overall view of the characteristics of these algorithms and comparison of their capabilities to each other. This paper presents a survey of the current methods for controlling...

متن کامل

OPTIMAL DESIGN OF SINGLE-LAYER BARREL VAULT FRAMES USING IMPROVED MAGNETIC CHARGED SYSTEM SEARCH

The objective of this paper is to present an optimal design for single-layer barrel vault frames via improved magnetic charged system search (IMCSS) and open application programming interface (OAPI). The IMCSS algorithm is utilized as the optimization algorithm and the OAPI is used as an interface tool between analysis software and the programming language. In the proposed algorithm, magnetic c...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:
  • CoRR

دوره abs/1603.01384  شماره 

صفحات  -

تاریخ انتشار 2016